package com.zkc.dao;

import com.zkc.pojo.Book;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface BookMapper {

    /**
     * 新增一本书
     * @param book 书籍实体
     * @return 数据库返回受影响的行数
     */
    int addBook(Book book);

    /**
     * 删除一本书
     * @param id 要删除的书籍ID
     * @return 数据库受影响的行数
     */
    int deleteBookById(@Param("bookId") int id);

    /**
     * 查询所有的书籍
     * @return
     */
    List<Book> queryAllBook();

    /**
     * 通过id查询书籍
     * @param id 要查询的书籍的id
     * @return 返回查询到的书籍实体
     */
    Book queryBookById(@Param("bookId") int id);

    /**
     * 更新一个书籍的信息
     * @param book 要更新的书籍实体
     * @return 数据库受影响的行数
     */
    int updateBook(Book book);

    /**
     * 通过一个书籍名称查询书籍列表
     * @param bookname 书籍名称
     * @return 书籍的列表
     */
    List<Book> queryBookByName(@Param("bookName") String bookname);

}
